Optimization-Aware Compiler-Level Event Profiling

نویسندگان

چکیده

Tracking specific events in a program’s execution, such as object allocation or lock acquisition, is at the heart of dynamic analysis. Despite apparent simplicity this task, quantifying these challenging due to presence compiler optimizations. Profiling perturbs optimizations that would normally do—a profiled program usually behaves differently than original one. In article, we propose novel technique for compiler-internal optimized code, reducing profiling perturbation on Our achieves by instrumenting from within compiler, and delaying instrumentation until point compilation pipeline after which no subsequent can remove events. We two different implementation strategies our based path-profiling, modification standard path-profiling algorithm facilitates use proposed modern just-in-time (JIT) compiler. analyze behaviour Graal, state-of-the-art Java Virtual Machine, identifying reasons behind performance improvement optimization, causes an unexpected slowdown another. Finally, evaluation results show implementations result significantly lower execution-time overhead w.r.t. naive implementation.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Compiler Optimization of Value Communication for Thread-Level Speculation

In the context of Thread-Level Speculation (TLS), inter-thread value communication is the key to efficient parallel execution. From the compiler’s perspective, TLS supports two forms of inter-thread value communication: speculation and synchronization. Speculation allows for maximum parallel overlap when it succeeds, but becomes costly when it fails. Synchronization, on the other hand, introduc...

متن کامل

Cost-Aware Query Optimization during Cloud-Based Complex Event Processing

Complex Event Processing describes the problem of timely and continuous processing of event streams. The load of Complex Event Processing systems can vary (e.g., event rates). Static resource provision leads to higher monetary costs because enough resources have to be provided to efficiently handle peak loads. Therefore, most of the time the resources will not be fully utilized. One way to achi...

متن کامل

A Retargetable Framework for Multi-objective WCET-aware High-level Compiler Optimizations

The worst-case execution time (WCET) is a key parameter in the domain of real-time systems and its automatic compiler-based minimization becomes a challenging research area. Although today’s embedded system applications are written in a high-level language, most published works consider low-level optimizations which complicate their portability to other processors. In this work, we present a fr...

متن کامل

Compiler-Directed I/O Optimization

Despite continued innovations in design of I/O systems, I/O performance has not kept pace with the progress in processor and communication technology. This paper addresses this I/O problem from a compiler’s perspective, and presents an I/O optimization strategy based on access pattern and storage form (file layout) detection. The objective of our optimization strategy is to determine storage fo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: ACM Transactions on Programming Languages and Systems

سال: 2023

ISSN: ['1558-4593', '0164-0925']

DOI: https://doi.org/10.1145/3591473